Storage devices enable users to store and retrieve data. Examples of storage devices include volatile memory devices and non-volatile memory devices. A non-volatile memory may retain data after a power-down event, and a volatile memory may lose data after a power-down event.
Storage devices may store and access data using a data structure. An example of a data structure is a hierarchical (or “tree”) data structure. A hierarchical data structure may indicate that data is to be stored at memory locations indicated by nodes (e.g., leafs) of the hierarchical data structure.
To locate the data after storing the data, a search may be performed based on an identifier (e.g., a key) associated with the data. For example, memory locations may be searched beginning at a particular memory location corresponding to a “root” node of the hierarchical data structure. Based on key values associated with data stored at the memory locations, the search may “branch” to different memory locations corresponding to different nodes of the hierarchical data structure until the key (and the data) is identified. Search of a hierarchical data structure consumes time and processing resources.